home *** CD-ROM | disk | FTP | other *** search
- package com.ibm.ivb.jface.vajava2;
-
- import com.ibm.ivb.jface.basic.BasicWorkbookUI;
- import com.ibm.ivb.jface.parts.WorkbookPage;
- import java.awt.Color;
- import java.awt.Dimension;
- import java.awt.Font;
- import java.awt.FontMetrics;
- import java.awt.Graphics;
- import java.awt.Rectangle;
- import javax.swing.Icon;
- import javax.swing.JComponent;
- import javax.swing.border.BevelBorder;
- import javax.swing.border.Border;
- import javax.swing.plaf.ComponentUI;
-
- public class VAJava2WorkbookUI extends BasicWorkbookUI {
- private static final String kCBIBMCopyright = "(c) Copyright IBM Corporation 1998";
- Border pageClientBorder = new BevelBorder(1, VAJava2LookAndFeel.getLight1(), VAJava2LookAndFeel.getDark1());
- int shaftPad = 6;
-
- public VAJava2WorkbookUI() {
- super.goprevVisible = false;
- }
-
- protected void calculateArrowWidth() {
- super.arrowWidth = super.left.getPreferredSize().width + super.right.getPreferredSize().width + (super.goprev.isVisible() ? 10 + super.goprev.getPreferredSize().width : 0) + 10;
- }
-
- public static ComponentUI createUI(JComponent var0) {
- return new VAJava2WorkbookUI();
- }
-
- public Color getSelectedTextColor() {
- return Color.black;
- }
-
- protected int getTabHeight() {
- Font var1 = super.wb.getFont();
- if (var1 == null) {
- return 30;
- } else {
- super.captionFont = var1;
- FontMetrics var2 = super.wb.getFontMetrics(var1);
- int var3 = var2.getHeight();
- return 5 + var3 + 4;
- }
- }
-
- public void installUI(JComponent var1) {
- super.installUI(var1);
- super.goprev.setVisible(false);
- super.tabWidth = 10;
- super.tabGap = 0;
- super.tpad = 8;
- super.borderInsets.top = this.shaftPad;
- super.borderInsets.left = 0;
- super.borderInsets.right = 0;
- super.borderInsets.bottom = 0;
- super.doplerShift = 1;
- super.extInsets.top = super.borderInsets.top + 2;
- super.extInsets.left = super.borderInsets.left + 4;
- super.extInsets.right = super.borderInsets.right + 4;
- super.extInsets.bottom = super.borderInsets.bottom + 1;
- super.tabHighlight = true;
- super.tabOverlap = false;
- super.tabStart = 7;
- }
-
- protected void paintBorders(Graphics var1, int var2) {
- super.tabHeight = this.getTabHeight();
- int var3 = super.tabHeight + this.shaftPad;
- Rectangle var4 = ((BasicWorkbookUI)this).getFrameRect(var3);
- var1.setColor(VAJava2LookAndFeel.getLight1());
- var1.drawLine(0, var3, var4.width, var3);
- }
-
- protected boolean paintOneTab(Graphics var1, WorkbookPage var2, int var3, int var4, int var5, int var6, boolean var7, boolean var8) {
- super.tabHeight = this.getTabHeight();
- Color var9 = super.wb.getBackground();
- Icon var10 = var2.getIcon();
- String var11 = var2.getTitle();
- boolean var12 = false;
- int var13 = var4 + super.tabHeight - 5;
- int var14 = var13;
- Color var15 = VAJava2LookAndFeel.getDark2();
- Color var16 = VAJava2LookAndFeel.getDark1();
- Color var17 = VAJava2LookAndFeel.getLight1();
- FontMetrics var18 = var1.getFontMetrics();
- int var19 = var11 != null ? var18.stringWidth(var11) : 0;
- if (var10 != null) {
- var19 += var10.getIconWidth() + 5;
- }
-
- if (var19 < super.tabWidth) {
- var19 = super.tabWidth;
- }
-
- int var20 = super.tpad + var19 + super.tpad;
- boolean var21 = var5 == super.wb.getPageCount() - 1;
- if (var3 + var20 > var6 - super.tabGap) {
- return false;
- } else {
- if (var5 == super.currentPage) {
- var12 = true;
- var14 = var13 - super.doplerShift;
- }
-
- int var22 = 0;
- int var23 = super.tabHeight;
- if (!var12) {
- var22 = super.doplerShift;
- var23 -= var22;
- }
-
- var1.setColor(var9);
- int var24 = var12 ? super.doplerShift + 3 : 0;
- var1.fillRect(var3, var4 + 4, var20, var23 + var24 - 3);
- var1.setColor(var9);
- if (var12) {
- var1.drawLine(var3 + 3, var4 + 1, var3 + var20 - 4, var4 + 1);
- }
-
- var1.drawLine(var3 + 1, var4 + 3, var3 + var20 - 2, var4 + 3);
- var1.drawLine(var3 + 2, var4 + 2, var3 + var20 - 3, var4 + 2);
- var1.setColor(var16);
- var1.drawLine(var3 + var20 - 1, var4 + 3 + var22, var3 + var20 - 1, var4 + var23 + var22 - 1);
- if (!var12) {
- var1.drawLine(var3 + 1, var4 + var23 + var22 - 1, var3 + var20 - 1, var4 + var23 + var22 - 1);
- }
-
- var1.setColor(Color.black);
- if (var12) {
- var1.drawLine(var3, var4 + 4, var3, var4 + var23);
- var1.drawLine(var3, var4 + 4, var3 + 4, var4);
- var1.drawLine(var3 + 4, var4, var3 + var20 - 4, var4);
- var1.drawLine(var3 + var20 - 4, var4, var3 + var20 - 1, var4 + 3);
- } else {
- var1.drawLine(var3, var4 + 4, var3, var4 + var23);
- var1.drawLine(var3, var4 + 4, var3 + 3, var4 + 1);
- var1.drawLine(var3 + 3, var4 + 1, var3 + var20 - 3, var4 + 1);
- var1.drawLine(var3 + var20 - 3, var4 + 1, var3 + var20 - 1, var4 + 3);
- }
-
- if (var21) {
- var1.drawLine(var3 + var20, var4 + 3 + var22, var3 + var20, var4 + var23 + var22 - 1);
- }
-
- if (var12) {
- var1.setColor(var17);
- var1.drawLine(var3, var4 + var23 + var22, var3 + 2, var4 + var23 + var22);
- var1.drawLine(var3 + 2, var4 + var23, var3 + 2, var4 + 4);
- var1.drawLine(var3 + 2, var4 + 4, var3 + 5, var4 + 1);
- var1.drawLine(var3 + 5, var4 + 1, var3 + var20 - 4, var4 + 1);
- var1.drawLine(var3 + var20 - 2, var4 + var23, var3 + var20 - 1, var4 + var23);
- var1.setColor(var16);
- var1.drawLine(var3 + 1, var4 + var23 - 1, var3 + 1, var4 + 4);
- var1.drawLine(var3 + 1, var4 + 4, var3 + 4, var4 + 1);
- var1.drawLine(var3 + var20 - 2, var4 + var23 - 1, var3 + var20 - 2, var4 + 3);
- var1.drawLine(var3 + var20 - 2, var4 + 3, var3 + var20 - 3, var4 + 2);
- var1.setColor(var15);
- var1.drawLine(var3 + var20 - 1, var4 + var23 - 1, var3 + var20 - 1, var4 + 3);
- var1.drawLine(var3 + var20 - 1, var4 + 3, var3 + var20 - 3, var4 + 1);
- var1.setColor(Color.black);
- var1.drawLine(var3 + var20, var4 + 3, var3 + var20 - 3, var4);
- }
-
- int var25 = var4 + var22 - 1;
- if (var12) {
- var1.setColor(this.getSelectedTextColor());
- } else {
- var1.setColor(Color.black);
- }
-
- int var26 = var3 + var20 / 2 - var19 / 2;
- if (var10 != null) {
- int var27 = var4 + super.tabHeight / 2 - var10.getIconHeight() / 2;
- if (!var12) {
- var27 += super.doplerShift;
- }
-
- var10.paintIcon(super.wb, var1, var26, var27);
- var26 += 5 + var10.getIconWidth();
- }
-
- if (var11 != null) {
- if (super.wb.isEnabled() && var2.isEnabled()) {
- var1.drawString(var11, var26, var14);
- } else {
- var1.setColor(var9.brighter());
- var1.drawString(var11, var26, var14);
- var1.setColor(var9.darker());
- var1.drawString(var11, var26 - 1, var14 - 1);
- }
- }
-
- var2.setTabBounds(var3, var4, var20 + (var21 ? 1 : 0), super.tabHeight);
- return true;
- }
- }
-
- protected void paintTabShaft(Graphics var1, boolean var2) {
- super.tabHeight = this.getTabHeight();
- int var3 = super.tabHeight + this.shaftPad;
- Rectangle var4 = ((BasicWorkbookUI)this).getFrameRect(var3);
- var1.setColor(VAJava2LookAndFeel.getDark2());
- var1.fillRect(0, 0, var4.width, var3);
- var1.setColor(Color.black);
- var1.drawLine(1, 0, 1, var3 - 1);
- var1.drawLine(1, 0, var4.width, 0);
- }
-
- public void paintWorkbookBorder(Graphics var1, Color var2, Dimension var3) {
- var1.setColor(var2.darker());
- var1.drawLine(0, 0, 0, var3.height - 1);
- var1.drawLine(var3.width - 1, 0, var3.width - 1, var3.height - 1);
- var1.drawLine(0, var3.height - 1, var3.width - 1, var3.height - 1);
- }
-
- public void uninstallUI(JComponent var1) {
- super.uninstallUI(var1);
- }
- }
-